Link management of document structures

ABSTRACT

Links are managed and units of information are linked based on a list having identifiers placed in a hierarchical order relative to other identifiers, the identifiers for identifying the units of information. Lists are stored and examined to determine the hierarchical order of the identifiers relative to the other identifiers, and a unit of information is linked to at least one other unit of information based on a relative hierarchical order between an identifier identifying the unit of information and another identifier identifying at least one other unit of information.

TECHNICAL FIELD OF THE INVENTION

This invention relates to managing links and more specifically tointer-linking a multitude of units of information such as web pages orhelp files and the like.

BACKGROUND

As a result of increased use of the World Wide Web (WWW) andcomputerized help files, rapid design and generation of web pages orhelp files is a necessity. Referring to FIG. 1, there is depicted a linkmanagement system provided by the prior art. An information developercreates units of source information 102A, 102B and 102C havinginformation content 104A, 104B and 104C, and links 106A, 106B and 106Crespectively. An example of units of information is a collection of webpages for a corporate web site wherein the web pages are inter-linked byURLs (Uniform Resource Locators) links. There are many well knownapplication programs for generating and linking web pages such asDreamweaver™ available from Macromedia of California, U.S.A. Anotherexample of units of information is a collection of help files that areinter-linked by URL links. The collection of help files are used in acomputer program application, such as a word processing application likeLotus™ Word Pro™ available from IBM Corporation of New York, U.S.A., toprovide assistance to users of the computer program. There are many wellknown application programs for generating and linking help pages such asRoboHelp™ available from eHelp Corporation of California. Content 104A,104B and 104C includes textual and/or graphic information for displayingthe information to end users or information consumers. Links 106A, 106B,106C link the units 102A, 102B, 102C together in a manner determined bythe information developer. It will be appreciated that units 102A, 102B,102C, content 104A, 104B, 104C, and links 106A, 106B, 106C reside inmemory 110 of a computer system 108. Memory 110 is operationallyconnected to central processing unit 112, which in turn is operationallyconnected to display 114 and keyboard/mouse 116 to allow the informationdeveloper to manage (i.e., create, view, modify, delete) various aspectsof units 102A, 102B, 102C, content 104A, 104B, 104C, and links 106A,106B, 106C.

More specifically, the information developer develops units of sourceinformation 102A, 102B and 102C such that link 106A of unit 102A pointsto unit 102B, link 106B of unit 102B points to unit 102C, and link 106Cof unit 102C points to unit 102A. It will be appreciated that thelinking of the units of information is set up to achieve the purposes ofthe information developer. When the information developer develops a newunit of source information 102D, the developer must decide which linksto add, delete or modify in order to integrate the linking of unit 102Dwith the existing linked units 102A, 102B and 102C. For example, theinformation developer may decide that link 106C should point to unit102D and link 106D should point to unit 102A and then must modify link106C and enable link 106D accordingly to met this new requirement orpurpose. It will be appreciated that each time the information developercreates, deletes or modifies various units of source information, thelinks embedded in each unit of source information must be individuallyupdated, which is generally inconvenient especially when the developeris responsible for developing a multitude of units of source informationwhich over time will evolve and may require constant effort for updatingthe links. In an inconvenient and disorganized manner, the system 100intermixes the information content and the links into a potentiallyunruly tangle of links and information content which will become verydifficult to disentangle when changes to the linking of the units ofinformation is required.

Referring to FIG. 2, there is depicted another link management system200 provided by the prior art. An information developer creates units ofsource information 202A, 202B having information content 204A, 204Brespectively. A generator 210 having a compiler 208 or equivalent, readscomputer programmed instructions 206 having programmed assignments forexplicitly stating an arbitrary, inter-linking assignment between unitsof source information 204A and 204B, and follows instructions 206 toinsert desired links in various units of information 212A, 212B.Generator 210 generates units of target information 212A, 212B havingcontent 214A, 214B and links 216A, 216B respectively. The links 216A,216B are explicitly defined in computer programmed instructions 206.Several examples of system 200 are XLINK Library which was developed byW3C (World Wide Web Consortium), Topic Maps which was developed as anISO (International Standards Organization) standard, and RDF ResourceDescriptor which was developed by Framework under the guidance of theW3C.

It will be appreciated that content 204A, 204B includes textual and/orgraphic information. Instructions 206 includes computer programmedinstructions that explicitly state or define desired linkingrelationships between various units of source information 202A, 202B orunits of target information 212A, 212B. An example of programmedinstructions of instructions 206 is revealed in Appendix 1.

Compiler 208 reads and interprets or converts the instructions 206 todirect the generator 210 to generate units of target information 212A,212B. Instructions 206 provides computer programmed instructions forinstructing a Central Processing Unit (CPU), via generator 210, togenerate content 214A, 214B; for example, content 214A includes content204A, and content 214B includes content 204B. Also, instructions 206provides explicit instructions for instructing the generator to insertlinks 216A, 216B for pointing to various generated units of targetinformation; for example, link 216A links unit 212A to unit 212B, andlink 216B links unit 212B to unit 212A. It will be appreciated that eachunit of target information will be linked to at least one other unit oftarget information. When new units of information are to be added orexisting units of information are to be removed, or when the linkingrelationships between various units of information are changed, theinformation developer makes changes to instructions 206 and causesgenerator 210 to read the adapted or changed instructions to regenerateunits of target information 212A, 212B.

It will be appreciated that units of information 202A, 202B, 212A, 212B,instructions 206 and generator 210 all reside in memory 220 of computersystem 218. Memory 220 is operationally coupled to CPU 222, which inturn is operationally coupled to display 224 and keyboard/mouse 226 sothat the developer can view and adapt instructions 206 accordingly toachieve the purposes of the task of inter-linking the units of sourceinformation 202A and 202B.

While the units of source information and the instructions are generatedseparately, the instructions require the information developer to learnand become proficient in a new computer programming language,techniques, or procedures, which places an additional and inconvenientlearning curve or burden on the information developer. Additionally, ifthe information developer were to be replaced, a new informationdeveloper would face the inconvenient task of debugging instructions 206to determine the inter-linking relationships between units of targetinformation 212A and 212B. The structure of instructions 206 indicatingthe locations of the various information content does not correspond tothe structure of the relationships between the units of targetinformation. The instructions 206 stores information about relationshipsbut the structure of the instructions of instructions 206 does notexpress these relationships.

Generally, the prior art provides inadequate methods for inter-linkingunits of information. Time is wasted on individually updating each unitof information or on learning new programming languages, techniques, orprocedures to configure explicit assignments of inter-linkingrelationships between units of information. Accordingly, a linkmanagement system which addresses, at least in part, these and othershortcomings is desired.

SUMMARY OF THE INVENTION

The present invention provides a mechanism for generating units oftarget information from created units of source information by referringto a listing of identifiers. A unit of target information is created foreach identifier, and each created unit of target information is linkedto at least one other unit of target information. The criteria fordetermining which units of target information are linked to specificother units of target information is encoded implicitly in the relativehierarchy and/or ordering of the identifiers in a listing. In thismanner, an information developer avoids having to learn a computerprogramming language, techniques, or procedures for explicitly statingthe linking relationships of the various units of target information,and in stark contrast to the prior art, the invention enables theinformation manager to manage the structure of a listing of identifiersfor creating links in units of information.

In a first aspect of the present invention, there is provided a linkmanagement system for creating links amongst units of information basedon a list of identifiers arranged in an hierarchical order wherein eachidentifier identifies an associated unit of information, the systemincluding means for storing the list of identifiers, means for examiningthe list of identifiers to determine the hierarchical order of theidentifiers within the list of identifiers, means for linking a unit ofinformation to at least one other unit of information based on therelative hierarchical order of identifiers including an identifieridentifying the unit of information and another identifier identifyingthe at least one other unit of information.

In a second aspect of the invention, there is provided a methodperformed on a computer system operationally coupled to computerreadable memory for storing a list of identifiers, and the method forcreating and managing links amongst units of information based on thelist of identifiers arranged in an hierarchical order wherein eachidentifier identifies an associated unit of information, the methodincluding the steps of storing the list of identifiers, examining thelist of identifiers to determine the hierarchical order of theidentifiers within the list of identifiers, linking a unit ofinformation to at least one other unit of information based on therelative hierarchical order of identifiers including an identifieridentifying the unit of information and another identifier identifyingthe at least one other unit of information.

In a third aspect of the invention, there is provided a computer programproduct for use in a computer system operatively coupled to a computerreadable memory, the computer program product including acomputer-readable data storage medium tangibly embodying computerreadable program code for directing the computer to create and managelinks amongst units of information based on a list of identifiersarranged in an hierarchical order wherein each identifier identifies anassociated unit of information, the computer program product includingcode for instructing the computer system to store the list ofidentifiers, code for instructing the computer system to examine thelist of identifiers to determine the hierarchical order of theidentifiers within the list of identifiers, code for instructing thecomputer system to link a unit of information to at least one other unitof information based on the relative hierarchical order of identifiersincluding an identifier identifying the unit of information and anotheridentifier identifying the at least one other unit of information.

A better understanding of these and other aspects of the invention canbe obtained with reference to the following drawings and description ofthe preferred embodiments.

DRAWINGS OF THE INVENTION

The following figures are examples of the implementation of the presentinvention, in which:

FIG. 1 depicts a prior art system;

FIG. 2 depicts another prior art system;

FIG. 3 depicts a link management system according to a first embodimentof the invention using a first listing of identifiers;

FIG. 4 depicts operations of the link management system of FIG. 3;

FIGS. 5A and 5B depict the link management system generating units oftarget information;

FIG. 6 depicts a link management system according to a second embodimentof the invention using a second listing of identifiers;

FIG. 7 depicts a first unit of target information generated by using thesecond listing of FIG. 6;

FIG. 8 depicts a second unit of target information generated by usingthe second listing of FIG. 6;

FIGS. 9A and 9B depict operations of the link management system of FIG.6;

FIG. 10 depicts the link management system of FIG. 6 using a thirdlisting of identifiers;

FIG. 11 depicts a third unit of target information generated by usingthe third listing of FIG. 10; and

FIG. 12 depicts a fourth unit of target information generated by usingthe second and the third listings of identifiers of FIGS. 6 and 11respectively.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to FIG. 3, there is depicted a link management system 300 of afirst embodiment of the invention. Units of source information 302A and302B each include content 304A and 304B respectively. Content 304A and304B includes textual information and/or graphic information. Listing306 includes identifiers 308A and 308B which are placed or positioned,by the information developer, in the listing 306 in a hierarchical orderalong with other identifiers of the listing 306. The hierarchical orderimplicitly reveals or provides information about desired inter-linkingrelationships between the units of target information 312A, 312B. Forexample, a relative hierarchical order of the identifiers can beachieved by placing the identifiers in an ordered sequence in which oneidentifier precedes another identifier to indicate to the link manager310 that the desired linking relationship of units of target informationis a sequential inter-linking. Other hierarchical orders may be used inimplementing the invention, some of which are subsequently mentioned inthe description.

The term ‘hierarchy’ can include a ranking or ordering of identifiers ofa listing. A listing of identifiers can be one in which the identifiersare placed in a series in which each identifier is ranked relative toother identifiers of the listing. A listing of identifiers can beorganized into successive ranks or grades with each level subordinate toanother level of identifiers of the listing.

Link manager 310 reads listing 306, units of source information 302A and302B, or alternatively reads source information content 304A, 304B, togenerate units of target information 312A, 312B having content 314A,314B and links 316A, 316B respectively. Identifiers 308A, 308B indicateto linking manager 310 to generate unit 312A, 312B respectively.Identifiers 308A, 308B indicate or identify to link manager 310 thelinks to be placed into links 316A, 316B of units of target information312A and 312B respectively. Additionally, identifiers 308A, 308B canalso indicate to linking manager 310 the information content to beplaced into contents 314A, 314B of units of target information 312A,312B respectively.

The system 300 links units of information based on a list havingidentifiers placed in a hierarchical order relative to other identifiersfor identifying the units of information. The system 300 includes amechanism for storing the list 306, such as memory 320, a mechanism forexamining the list 306 to determine the hierarchical order of theidentifiers relative to the other identifiers on the list, such asDocument Object Model APIs (Application Programming Interface), amechanism for linking a unit of information to at least one other unitof information, such as hypertext links, with the links being derivedfrom the relative hierarchical order between an identifier identifyingthe unit of information and another identifier identifying at least oneother unit of information.

Units of source information 302A, 302A, listing 306, link manager 310,units of target information 312A, 312B all reside in memory 320 ofcomputer system 318. Memory 320 is operationally coupled to bus 322 forintercommunicating between various modules of computer 318. Bus 322operationally couples memory 320, central processing unit (CPU) 324,network interface (I/F) 326, and input/output interface 328 together.Display 334, keyboard/mouse 336, and disk 336 are suitably connected tointerface 328 by conventional mechanisms. Networked computer 332 isoperationally connected to computer 318 via network 330 and suitablecommunications modules known to persons having ordinary skill in the artof networking.

Alternatively, it will be appreciated that link manager 310 can beadapted to operate so that units of source information can be created byan information developer and link manager 310 can generate the units oftarget information and overwrite the existing units of sourceinformation, such that the information developer perceives that theunits of source information have been updated to include the links whichwhere specified by the listing 306. Caution would have to be used whenusing this alternative arrangement because the original units of sourceinformation were deleted. To avoid this unpleasant scenario, theoriginal units of source information should be placed in a backupdirectory or copied into a publishing directory before being processed.

System 300 can also be used with units of target information and unitsof source information. Identifiers of list 306 identify sourceinformation content of units of source information which are assigned tosaid units of target information. The system 300 includes a mechanismfor generating the units of target information, a mechanism forexamining list 306 to identify the source information content assignedto the units of target information, and a mechanism for inserting atleast one source information content into a unit of target information.

It will be appreciated that a mechanism can be implemented or realizedas a system having discreet electronic/electrical components orhardware, or can be implemented as a system having computer codedsoftware instructions or modules, or can be implemented as a hybridsystem having some hardware and some software modules as known bypersons having ordinary skill in the art of computers.

Referring to FIG. 4, there is depicted operations of link managementsystem 300 of FIG. 3. It will be appreciated that operations depicted inthe flowchart 400 will be performed by system 300. When system 300 isready, 402 begins operations. In 404, link manager 310 reads listing 306having identifiers 308A 308B for identifying a relative hierarchicalorder of linking relationships between units of source information 302A,302B. The identifiers of list 306 are placed or positioned on the listin a hierarchical order relative to other identifiers of the list 306.Link manager 310 determines which units of target information will beinter-linked by examining the relative hierarchical order betweenidentifiers of list 306 (406). In 408, link manager 310 will generate aunit of target information for each identified unit of targetinformation. Once the unit of target information is generated, linkmanager 30 inserts content into the generated unit of target informationif the identifier identifies information content to be placed into theunit of target information (410).

In 412, link manager 310 inserts links into the unit of targetinformation for linking to other units of target information. The linksare determined by decoding the hierarchical order of the identifiersrelative to other identifiers of list 306. In 414, link manager 310determines whether there are more units of target information to begenerated. In 416, link manager 310 determines whether there are moreidentifiers to be examined. It will be appreciated that the processoperations depicted in flowchart 400 are interactive steps or can beadapted to avoid interaction. In 418, processing stops.

Referring to FIGS. 5A and 5B, there is depicted a link management system500 which also operates in a similar fashion to the system 300 of FIG.3. An information developer develops or generates source information502A to 502J inclusive having information content 504A to 504Jrespectively. Listing 506 includes identifiers 508A to 508G inclusive,which are positioned or located in a hierarchical order along with theother identifiers of the listing 506 in which the information developerdetermined or selected prior to making list 506 available to linkmanager 510.

Link manager 510 will read listing 506 to generate units of targetinformation 512A to 512G inclusively. Identifiers 508D, 508E, 508F arenested below identifier 508C which provides a visual clue that the innernested identifiers are “children” of identifier 508C, in that the innernested identifiers are sub-topics which are related to a main topicidentified by identifier 508C. In this manner, further inter-nesting ofselected topics can be hierarchically identified and ordered.

Identifier 508A identifies unit of information 512A to be generated bylink manger 510, and also identifies that content 504A is to be placedinto the content 514A of unit 512A. Since identifier 508B is positionedor located adjacently to identifier 508A, then link manager 510 willinsert link 516A into unit 512A for linking unit 512A to unit 512B.

Identifier 508B identifies unit of information 512B to be generated bylink manager 510, and also identifies that content 504B is to be placedinto content 514B of unit 512B. Since identifier 508A is positionedadjacently to identifier 508B but appears previous to it in order, thenlink manager 510 will insert link 516B-1 into unit 512B for linking unit512B to unit 512A. Link 516B-1 can be labelled as a “previous” link toindicate to the end user that there is a previous unit of information(512A) which precedes unit 512B.

Since identifier 508C is positioned adjacently to identifier 508B butappears after it in the listing order, then link manager 510 will insertlink 516B-2 into unit 512B for linking unit 512B to unit 512C. Link516B-2 can be labelled as a “next” link to provide a visual clue to theend user that there is another unit of target information (512C) whichcomes after unit 512B.

Identifier 508C identifies unit of target information 512C to begenerated by link manager 510, and also identifies that content 504C and504D are to be placed or inserted into content 514C of unit 512C. Sinceidentifier 508B is positioned adjacently to identifier 508C but appearsprevious to it in the order, then link 510 will insert link 516C-1 intounit 512C for linking unit 512C to unit 512B. Link 516C-1 can belabelled as a “previous” link to visually indicate to the end user thatthere is a previous unit of target information 512B which comes beforeunit 512C. Since identifier 508G is positioned adjacently to identifier508C in the same hierarchical level, but appears after it in the order,then link manager 510 will insert link 516C-2 into unit 512C for linkingunit 512C to unit 512G, and link 512C-2 can be labelled as a “next” linkto visually indicate to the end user that there is a next unit of targetinformation 512G which comes after unit 512C.

Since identifiers 508D, 508E, 508F are positioned or located eitherwithin the markup boundaries of identifier 508C or somehow nested orindented after or below it in the list hierarchy, identifiers 508D,508E, 508F identify sub-topics of unit 512C, then link manager 510 willinsert links 516C-3, 516C-4, 516C-5 into unit 512C for linking unit 512Cto respective units 512D, 512E and 512F. Links 516C-3. 516C-4, 516C-5can be labelled as “children” links to provide a visual clue to the enduser that units 512D, 512E, 512F are sub-topics of unit 512C. Within thenesting of identifiers 508D, 508E, 508F, there is no other sub-nesting.

Since identifier 508D is a child of parent 508C, then link manager 510will insert link 516D-1 into unit 512D for linking unit 512D to unit512C. Link 516D-1 can be labelled as a “parent” link to provide a visualclue to the end user that target information (512C) is the parent ofunit 512D.

Identifier 508D identifies unit 512D to be generated by link manager510, and also identifies that content 504E is to be placed or insertedinto content 514D. Since identifier 508E is positioned/locatedadjacently to identifier 508D but appears after it in listing order,then link manager 510 will insert link 516D-2 into unit 512D for linkingunit 512D to unit 512E. Link 516D-2 can be labelled as a “next” link asa visual clue to the end user that there is another unit of informationthat comes after unit 512D.

The remaining identifiers 508E, 508F, 508G are treated in a similarmanner as described for identifiers 508A to 508D inclusive to generateand link units 512E, 512F, 512G respectively.

Referring to FIG. 6, there is depicted a link management system 600 of asecond embodiment of the invention operating with units of sourceinformation 602A to 602 i inclusive and listing 604 to generate units oftarget information 608A to 608 i inclusive.

Listing 604 stores the inter-linking information implicitly in thestructure of listing 604. Listing 604 is written in a markup languagesuch as HTML (Hyper Text Markup Language) or defined by XML (ExtensibleMarkup Language) which uses data tags for conveniently identifying unitsof source and target information and the data tags can also bepositioned/located in a containment hierarchy, such that some tagscontain other tags and their relative nesting and order can indicaterelationships between units of target information, with therelationships ultimately expressed as hypertext links in the targetinformation. Appendix 2 reveals the HTML code for listing 604.

List item data tag “<li>” and “</li>” encapsulate or identify listitems, in which link manager 606 will create a unit of targetinformation for each identified list item that is identified andencapsulated by the list item data tags.

Within each pair of matching list item data tags “<li>” and “</li>”there is another pair of data tags “<a href=“file.htm”>“title for unitof target information”</a>” for encapsulating or identifying a unit ofsource information or source content that will be placed or insertedinto the unit of target information that is to be generated by linkmanager 606.

Within each matching pair of unordered list data tags, “<ul>” and“</ul>” there is encapsulated a nested list of list items which areidentified or encapsulated by the appropriate list item data tags. Theitem of an unordered list are not ordered sequentially. Examples ofitems in an unordered list include topics “Defining constraints” and“Editing constraints” identified under topic “Maintaining” in list 604.The visual clue to the author (using an HTML editor) or end user (usinga browser) is that the list item of an unordered list are preceded by abullet.

Within each matching pair of ordered list data tags “<ol>” and “</ol>”there is encapsulated a nested list of list items which are identifiedby various list item data tags. The items of an ordered list are orderedsequentially. Examples of items in an ordered list include topics “1.Creating Databases” and “2. Adding Tables” identified under topic“Administrating” in list 604.

Referring to FIG. 7, there is depicted an example of a unit of sourceinformation 702 and a corresponding unit of target of information 704which was generated by link manager 606 of FIG. 6 when link manager 606read listing 604. Appendix 3 reveals the HTML code created by aninformation developer of the unit of source information 702. Appendix 4reveals the HTML code generated by link manager 606, which is the unitof target information 704 which is identified in listing 604 as item “4.Defining Constraints”. Box 706A shows the title of the unit of targetinformation 704. Box 706B shows the “Previous” and “Next” links. Thelink “Prev” of unit 704 will link to a unit of target informationidentified as “te-adding_columns.htm” which is identified in listing 604as item “3. Adding Columns”. The link “Next” of unit 704 will link to aunit of target information identified as “te_generating_sql.htm” whichidentified in listing 604 as item “5. Generating SQL”. Box 706C showsthe information content “this is a simple task” was taken from unit ofsource information 702. Box 706D shows the links to the sub-topics ofthe unit of target information 704. Box 706E shows the links to therelated tasks of unit 704. Box 706E contains links to parent topics(i.e., from sub-topics to their parent topics). The content identifierfor “Defining constraints” appears twice in the listing, in each caseunder a unique identifier, so it has two parents.

Referring to FIG. 8, there is depicted another example of unit of sourceinformation 802 and a corresponding unit of target information 804 whichwas generated by link manager 606 of FIG. 6 when link manager 606 ofFIG. 6 read listing 604. Appendix 5 reveals the HTML code created by aninformation developer of the unit of source information 802 havinginformation content “this is another simple task”. Appendix 6 revealsthe HTML code generated by link manager 606 which is unit of targetinformation 804 as “Defining primary Keys” which is a sub-topic of “4.Defining constraints”.

Referring to FIGS. 9A and 9B, there is depicted operations of linkmanager 606 of FIG. 6. Appendix 7 reveals the HTML code of link manager606. The operations depicted in flowcharts 900 and 920 are performed bylink manager 606 unless stated otherwise.

When link manager is ready, 902 begins a process for determininginter-linking relationships between units of target informationidentified in listing 604. In 904, link manager 606 reads listing 604having identifiers for identifying units of source information to beprocessed by the link manager 606. The inter-linking relationships willbe encoded in a hierarchical order of the identifiers relative to otheridentifiers positioned/located in the listing 604. In 906, link manager606 picks or chooses an identifier from listing 604. Preferably, thefirst identifier is chosen when operations depicted in flowchart 900 isinitially executed by link manager 606.

In 908, link manager 606 determines the inter-linking relationshipsbetween the chosen identifier from 906 and other identifiers based on arelative hierarchical order between identifiers positioned/located inlisting 604. In 910, once the inter-linking relationship is determined,the relationships are conveniently stored in a relationship file forfuture reference. In 912, link manager 606 determines whether to examineanother identifier in listing 604. If yes, processing continues to 906and another identifier is picked or chosen. If no, processing continuesto 914. In 914, link manager 606 determines whether there is anotherlisting that must be examined. A multitude of listings can be used bylink manager 606, as will be shown in FIG. 12. If yes, then processingcontinues to 904 in which another list will be examined. If no, thenprocessing continues to 916. In 916 processing stops.

It is understood that one relationship file is created for containingthe inter-linking relationships with suitable organization in therelationship file. For sake of convenience, there is one relationship orlink file per identifier of a unit of target information. It will beappreciated that for simplifying the description, individualrelationship files correspond to units of target information to begenerated.

Referring to flowchart 920 of FIG. 9B, there is depicted a process forcreating units of target information and inserting links into the linksof target information to inter-link the units of target information asidentified from the process of flowchart 900 of FIG. 9A. Operationsdepicted in flowchart 920 will be performed by link manager 606 of FIG.6. Once a listing or a multitude of listings has been processed by thelink manager 606, in accordance to the operations depicted in FIG. 9A,then link manager 606 may begin the operations depicted in FIG. 9B.

When link manager 606 is ready, 922 begins the process. In 924, linkmanager 606 obtains a relationship file of an identity that wasprocessed during the generations depicted in flowchart 900. In 926, linkmanager 606 generates or causes the generation of a unit of targetinformation for the obtained relationship file. In 928, link manager 606inserts or causes the insertion of information content from a unit ofsource information into a created unit of target information, the unitof source information having the information content that was identifiedin listing 604. In 930, link manager 606 inserts or causes the insertionof links identified in the relationship file into the created unit oftarget information. In 932, link manager 606 determines whether toexamine another relationship file. If yes, then processing continues to924. If no, then processing continues to 934. In 934, processing stops.

Referring to FIG. 10, there is depicted a link management system 1000including units of source information 1002A to 1002 i inclusive, listing1004, link manager 1006, and units of target information 1008A to 1008i. Listing 1004 is depicted as how a user would view the listing via aweb browser. Manager 1006 reads listing 1004 to generate units of targetinformation 1008A to 1008 i.

It will be appreciated that units of target information 1008A to 1008 ican already include pre-existing content information (not depicted) andthat link manager 1006 uses listing 1004 to determine the inter-linkingrelationships between units of target information and then insertsappropriate links into corresponding units of target informationconsummate with the inter-linking relationships identified in listing1004. However, for simplified explanation of the operation of theinvention, units of target information will be generated and informationcontent to be inserted into the units of target information will betransferred from the units of source information while listing 1004provides the details about the inter-linking relationships between theunits and target information.

Appendix 8 reveals the HTML code for listing 1004, which includesseveral new types of identifiers or data tags to create a hierarchicalstructure or map in a tabular format. The table depicted in listing 1004has 4 columns and 2 rows. The first column of the table is labelled“Concepts”, the second column is labelled “Tasks”, the third column islabelled “Reference”, and the fourth column is labelled “Fl Help”.

Located in the lower row of the table are various identifiers foridentifying topics which are related to the title of the variouscolumns. Matching table data tags “<tr>” and “</tr>” encapsulate oridentify a set of cell items or text such as column titles into a singlerow of the table depicted in listing 1004. Matching table entry datatags “<td>” and “<td>” encapsulate the list items in each cell to beinserted into a single table cell of the row of the table.

Referring to FIG. 11, there is depicted an example of a unit of sourceinformation 1102 for use with the system 1000 of FIG. 10. Unit of targetinformation 1104 is generated by link manager 1006. Link manager 1006reads listing 1004 and locates an identifier 1004A for indicating tolink manager 1006 to generate unit of target information 1104. Appendix9 reveals the HTML code of target of information 1104.

Box 1106A includes the title of the unit of target information 1104. Thetitle of the unit of target information 1104 was identified or locatedin the listing 1004 in which the title is identified by beingencapsulated within an appropriate set of matched data tags within theHTML code of listing 1004. Box 1106B includes information content whichwas taken from the unit of source information 1102 and placed into unitof target information 1104. The identifiers of listing 1004 identifiedthe location of the information content to be located or placed in unitof target information 1104. It will be appreciated that unit 1104 couldalready contain information content prior to the link manager 1006inserting the links into unit 1104, in which the link manager is adaptedto only inserting links into units of information in which theinformation contains pre-existing information content. Box 1106C depictsa set of links inserted by link manager 1006 into unit of targetinformation 1104. The links of box 1106C are located/identified in thefirst column of the table of listing 1004 named “Concepts”. Box 1106Ddepicts another set of links inserted by link manager 1006 into unit oftarget information 1104. The links of box 1106D were identified/locatedin the third column of the table of listing 1004 named “Reference”.

Referring to FIG. 12, there is depicted a unit of source information1202 and a unit of target information 1204. Unit 1204 was generated bylink manager 606 of FIG. 6 after reading list 604 of FIG. 6 and list1004 of FIG. 10. Appendix 10 reveals the HTML code of unit of targetinformation 1204.

Box 1206A contains a title of the unit of target information 1204. Thetitle was identified in either listing 604 or 1004. Box 1206B contains aset of links ‘Prev’ and ‘Next’ which was inserted into unit 1204 by linkmanager 606 as a result of manager 606 reading list 604. Box 1206Cincludes information content which was taken from the unit of sourceinformation 1202 and placed into unit of target information 1204. Theidentifiers of listing 604 or 1004 identified the location of theinformation content to be located or placed in unit of targetinformation 1204. Box 1206D includes a set of links inserted into unit1204 by link manager 606 as a result of using listing 604. Box 1206Eincludes a set of links inserted into unit 1204 by link manager 606 as aresult of using listing 1004. Block 1206E contains a mix of entries fromboth listings.

The concepts of the present invention can be further extended to avariety of other applications that are clearly within the scope of thisinvention. Having thus described the present invention with respect to apreferred embodiment as implemented, it will be apparent to thoseskilled in the art that many modifications and enhancements are possibleto the present invention without departing from the basic concepts asdescribed in the preferred embodiment of the present invention.Therefore, what is intended to be protected by way of letters patentshould be limited only by the scope of the following claims.

1. A method performed on a computer system having a Central ProcessingUnit (CPU) coupled to computer readable memory to store a list ofidentifiers, and said method to create and manage links amongst units ofinformation based on said list of identifiers arranged in anhierarchical order wherein each identifier identifies an associated unitof information, said method comprising the steps of: storing said listof identifiers in the computer system, wherein said list of identifiershas a user determined relative hierarchical order to direct a linkmanagement system in the creation of said links; examining said list ofidentifiers to determine the hierarchical order of said identifierswithin said list of identifiers; linking a unit of information to atleast one other unit of information based on the relative hierarchicalorder of identifiers including: an identifier identifying said unit ofinformation; and another identifier identifying said at least one otherunit of information, wherein: said units of information are units oftarget information; each said identifier of said list of identifiers isconfigured to identify source information content of a unit of sourceinformation assigned to a unit of target information from among saidunits of target information; said list of identifiers further comprises:a first subset of identifiers that identifies said units of targetinformation to be generated by said system, said first subsethierarchically ordered to indicate preferred linking of said units oftarget information; a second subset of identifiers that identifies saidsource information content to be inserted into said units of targetinformation being identified by said first subset of identifiers; saidstep of linking is configured to link a unit of target information fromamong said units of target information to at least one other unit oftarget information from among said units of target information based onthe relative hierarchical order of identifiers including: an identifierof said first subset that identifies said unit of target information; atleast one other identifier of said first subset that identifies said atleast one other unit of target information; and said method furthercomprising the steps of: generating said units of target information;and inserting at least one source information content into a unit oftarget information from among said units of target information based onan identifier of said second subset identifying said at least one sourceinformation content.
 2. The method of claim 1 wherein: said units ofinformation are units of target information; each said identifier ofsaid list of identifiers is configured to identify source informationcontent of a unit of source information; the method further comprisingthe steps of: generating said units of target information; examiningsaid list of identifiers to identify said source information contentassigned to a unit of target information from among said units of targetinformation; and inserting said source information content into a unitof target information from among said units of target information basedon the identifier of said unit of target information identifying saidsource information content.
 3. The method of claim 2 wherein a pluralityof source information content is assigned to a unit of targetinformation from among said units of target information.
 4. The methodof claims 2 or 3 wherein said identifiers of said list are data tags ofa markup language.
 5. The method of claim 1 wherein said list ofidentifiers further includes a third subset of identifiers thatidentifies links that interlink units of target information.
 6. Themethod of claim 5 wherein the step of linking is configured to insertURL links.
 7. A link management system to create links amongst units ofinformation based on a list of identifiers arranged in an hierarchicalorder wherein each identifier identifies an associated unit ofinformation, said system comprising: a Central Processing Unit (CPU)coupled to a memory, the memory comprising: means for storing said listof identifiers, wherein said list of identifiers has a user determinedrelative hierarchical order to direct said link management system in thecreation of said links; means for examining said list of identifiers todetermine the hierarchical order of said identifiers within said list ofidentifiers; means for linking a unit of information to at least oneother unit of information based on the relative hierarchical order ofidentifiers including: an identifier identifying said unit ofinformation; and another identifier identifying said at least one otherunit of information, wherein said units of information are units oftarget information; each said identifier of said list of identifiers isconfigured to identify source information content of a unit of sourceinformation; the link management system further comprises: means forgenerating said units of target information; means for examining saidlist of identifiers to identify said source information content assignedto a unit of target information from among said units of targetinformation; and means for inserting said source information contentinto a unit of target information from among said units of targetinformation based on the identifier of said unit of target informationidentifying said source information content.
 8. The link managementsystem of claim 1 wherein a plurality of source information content isassigned to a unit of target information from among said units ofinformation.
 9. The link management system of claim 1 wherein: saidunits of information are units of target information; each saididentifier of said list of identifiers is configured to identify sourceinformation content of a unit of source information assigned to a unitof target information from among said units of target information; saidlist of identifiers further comprises: a first subset of identifiersthat identifies said units of target information to be generated by saidsystem, said first subset hierarchically ordered to indicate preferredlinking of said units of target information; a second subset ofidentifiers that identifies said source information content to beinserted into said units of target information identified by said firstsubset of identifiers; said means for linking is configured to link aunit of target information from among said units of target informationto at least one other unit of target information from among said unitsof target information based on the relative hierarchical order ofidentifiers including: an identifier of said first subset thatidentifies said unit of target information; at least one otheridentifier of said first subset that identifies said at least one otherunit of target information; and link management system furthercomprises: means for generating said units of target information; andmeans for inserting at least one source information content into a unitof target information from among said units of target information basedon an identifier of said second subset identifying said at least onesource information content.
 10. The link management system of claim 9wherein said list of identifiers further includes a third subset ofidentifiers that identifies links that inter-link units of targetinformation.
 11. The link management system of claim 10 wherein themeans for linking is configured to insert URL links.
 12. The linkmanagement system of claim 8 or 10 wherein said identifiers of said listare data tags of a markup language.
 13. A computer program product in acomputer system having a Central Processing Unit (CPU) coupled to acomputer readable memory, the computer program product including acomputer-readable data storage medium tangibly embodying computerreadable program code executable on a computer to direct said computerto create and manage links amongst units of information based on a listof identifiers arranged in an hierarchical order wherein each identifieridentifies an associated unit of information, said computer programproduct comprising: code to instruct said computer system to store saidlist of identifiers, wherein said list of identifiers has a userdetermined relative hierarchical order to direct a link managementsystem in the creation of said links; code to instruct said computersystem to examine said list of identifiers to determine the hierarchicalorder of said identifiers within said list of identifiers; code toinstruct said computer system to link a unit of information to at leastone other unit of information based on the relative hierarchical orderof identifiers including: an identifier identifying said unit ofinformation; and another identifier identifying said at least one otherunit of information, wherein: said units of information are units oftarget information; each said identifier of said list of identifiers isconfigured to identify source information content of a unit of sourceinformation; said computer program product further comprises: code toinstruct said computer system to generate said units of targetinformation; code to instruct said computer system to examine said listof identifiers to identify said source information content assigned to aunit of target information from among said units of targetinformation;and code to instruct said computer system to insert saidsource information content into a unit of target information from amongsaid units of target information based on the identifier of said unit oftarget information identifying said source information content.
 14. Thecomputer program product of claim 13 wherein a plurality of sourceinformation content is assigned to at least one unit of targetinformation.
 15. The computer program product of claim 13 wherein: saidunits of information are units of target information; each saididentifier of said list of identifiers is configured to identify sourceinformation content of a unit of source information assigned to a unitof target information; said list of identifiers further comprises: afirst subset of identifiers for identifying said units of targetinformation to be generated by said system, said first subsethierarchically ordered to indicate preferred linking of said units oftarget information; a second subset of identifiers for identifying saidsource information content to be inserted into said units of targetinformation being identified by said first subset of identifiers; saidcode to instruct said computer system to link is configured to link aunit of target information to at least one other unit of targetinformation based on the relative hierarchical order of identifiersincluding: an identifier of said first subset for identifying said unitof target information; at least one other identifier of said firstsubset for identifying said at least one other unit of targetinformation; and said computer program product further comprises: codeto instruct said computer system to generate said units of targetinformation; and code to instruct said computer system to insert atleast one source information content into a unit of target informationbased on an identifier of said second subset identifying said at leastone source information content.
 16. The computer program product ofclaim 13 wherein: said units of information are units of targetinformation; each said identifier of said list of identifiers isconfigured to identify source information content of a unit of sourceinformation assigned to a unit of target information from among saidunits of target information; said list of identifiers further comprises:a first subset of identifies that identifies said units of targetinformation to be generated by said system, said first subsethierarchically ordered to indicate preferred linking of said units oftarget information; a second subset of identifiers that identifies saidsource information content to be inserted into said units of targetinformation being identified by said first subset of identifiers; saidcode to instruct said computer system to link is configured to link aunit of target information from among said units of target informationto at least one other unit of target information from among said unitsof target information based on the relative hierarchical order ofidentifiers including: an identifier of said first subset thatidentifies said unit of target information; at least one otheridentifier of said first subset that identifies said at least one otherunit of target information; and said computer program product furthercomprises: code to instruct said computer system to generate said unitsof target information; and code to instruct said computer system toinsert at least one source information content into a unit of targetinformation from among said units of target information based on anidentifier of said second subset identifying said at least one sourceinformation content.
 17. The computer program product of claim 16wherein said list of identifiers further includes a third subset ofidentifiers that identifies links that inter-link units of targetinformation.
 18. The computer program product of claim 17 wherein saidcode to instruct said computer system to link is configured to insertURL links.